package com.tfjybj.itoo.exam.provider.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.tfjybj.itoo.exam.entity.ProfessionEntity;
import com.tfjybj.itoo.exam.model.ProfessionModel;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * ProfessionDao接口
 * profession表
 *
 * @author 杨江涛
 * @version 2.0.0
 * @since 2.0.0 2018-11-15 10:35:56
 */
@Repository("professionDao")
public interface ProfessionDao extends BaseMapper<ProfessionEntity> {
	
	//region 模板生成：模糊查询
	/**
     * 根据专业名称模糊查询profession
     *
     * @param name  专业名称
     * @return 模糊查询的profession集合
     * @author 杨江涛
     * @since 2.0.0 2018-11-15 10:35:56
     */
    List<ProfessionEntity> queryLikeName(@Param("name") String name);


    //endregion

    /* **********************************以下为非模板生成的内容********************************* */

    /**
     * 根据学院ID查询专业信息
     *
     * @param academyId  学院ID
     * @return 根据学院ID查询专业信息
     * @author 杨江涛
     * @since 2.0.0 2018-11-15 10:35:56
     */
    List<ProfessionEntity> findByAcademyId(String academyId);

    /**
     * 根据学院id,查询符合条件的专业
     *
     * @param academyId      学院id
     * @param minSession 在校生最小届入学年份
     * @param maxSession 在校生最大届入学年份
     * @return 专业集合
     * @author 马莹
     * @since 2019年4月30日21:24:32
     */
    List<ProfessionModel> inquirySpecialty(@Param("academyId") String academyId, @Param("minSession") Object minSession, @Param("maxSession") Object maxSession);
}
